﻿using Microsoft.Practices.Unity;

namespace WDA.Core
{
   /// <summary>
   /// Represents an object that is able to configure a WDAB module.
   /// </summary>
   public interface IModuleConfigurator
   {
      /// <summary>
      /// Returns if this configurator wants to configure provided module.
      /// </summary>
      /// <param name="moduleContainerName">Module's container name.</param>
      /// <returns></returns>
      bool ShouldApply(string moduleContainerName);
      /// <summary>
      /// Configures provided module's container.
      /// </summary>
      /// <param name="moduleContainer">Module-specific container.</param>
      void Apply(IUnityContainer moduleContainer);
   }
}
